/**
 * jims
 */
package com.jims.master.modules.drug.entity;

import com.jims.master.common.persistence.DataEntity;
import org.hibernate.validator.constraints.Length;

import java.util.List;

/**
 * 药品发放生申请Entity
 * @author zhuq
 * @version 2017-03-18
 */
public class DrugProvideApplication extends DataEntity<DrugProvideApplication> {
	
	private static final long serialVersionUID = 1L;
	private String drugCode;		// 药品编码
	private String infoId;		// drugInfoId
	private String storageIn;		// 请领单位
	private String storageOut;		// 发放单位
	private Integer packageNum;		// 包装数量
	private String packageSpec;		// 包装规格
	private String packageUnits;		// 包装单位
	private String minSpec;		// 最小规格
	private String minUnits;		// 最小单位
	private Double quantity;		// 未发放大包装库存量
	private Double quantityOut;		// 已发放大包装库存量

    private DrugStock drugStock;
    private String storageName;
    private DrugInfo drugInfo;  //药品信息
    private String drugName;  //药品名称
    private List<DrugProvideApplication> drugProvideApplicationList;

	public DrugProvideApplication() {
		super();
	}

	public DrugProvideApplication(String id){
		super(id);
	}

	@Length(min=1, max=32, message="药品编码长度必须介于 1 和 32 之间")
	public String getDrugCode() {
		return drugCode;
	}

	public void setDrugCode(String drugCode) {
		this.drugCode = drugCode;
	}
	
	@Length(min=1, max=64, message="drugInfoId长度必须介于 1 和 64 之间")
	public String getInfoId() {
		return infoId;
	}

	public void setInfoId(String infoId) {
		this.infoId = infoId;
	}
	
	@Length(min=1, max=64, message="请领单位长度必须介于 1 和 64 之间")
	public String getStorageIn() {
		return storageIn;
	}

	public void setStorageIn(String storageIn) {
		this.storageIn = storageIn;
	}
	
	@Length(min=1, max=64, message="发放单位长度必须介于 1 和 64 之间")
	public String getStorageOut() {
		return storageOut;
	}

	public void setStorageOut(String storageOut) {
		this.storageOut = storageOut;
	}
	
	public Integer getPackageNum() {
		return packageNum;
	}

	public void setPackageNum(Integer packageNum) {
		this.packageNum = packageNum;
	}
	
	@Length(min=1, max=20, message="包装规格长度必须介于 1 和 20 之间")
	public String getPackageSpec() {
		return packageSpec;
	}

	public void setPackageSpec(String packageSpec) {
		this.packageSpec = packageSpec;
	}
	
	@Length(min=1, max=2, message="包装单位长度必须介于 1 和 2 之间")
	public String getPackageUnits() {
		return packageUnits;
	}

	public void setPackageUnits(String packageUnits) {
		this.packageUnits = packageUnits;
	}
	
	@Length(min=1, max=20, message="最小规格长度必须介于 1 和 20 之间")
	public String getMinSpec() {
		return minSpec;
	}

	public void setMinSpec(String minSpec) {
		this.minSpec = minSpec;
	}
	
	@Length(min=1, max=2, message="最小单位长度必须介于 1 和 2 之间")
	public String getMinUnits() {
		return minUnits;
	}

	public void setMinUnits(String minUnits) {
		this.minUnits = minUnits;
	}
	
	public Double getQuantity() {
		return quantity;
	}

	public void setQuantity(Double quantity) {
		this.quantity = quantity;
	}
	
	public Double getQuantityOut() {
		return quantityOut;
	}

	public void setQuantityOut(Double quantityOut) {
		this.quantityOut = quantityOut;
	}
	
    public DrugStock getDrugStock() {
        return drugStock;
    }

    public void setDrugStock(DrugStock drugStock) {
        this.drugStock = drugStock;
    }

    public List<DrugProvideApplication> getDrugProvideApplicationList() {
        return drugProvideApplicationList;
    }

    public void setDrugProvideApplicationList(List<DrugProvideApplication> drugProvideApplicationList) {
        this.drugProvideApplicationList = drugProvideApplicationList;
    }

    public String getStorageName() {
        return storageName;
    }

    public void setStorageName(String storageName) {
        this.storageName = storageName;
    }

    public DrugInfo getDrugInfo() {
        return drugInfo;
    }

    public void setDrugInfo(DrugInfo drugInfo) {
        this.drugInfo = drugInfo;
    }

    public String getDrugName() {
        return drugName;
    }

    public void setDrugName(String drugName) {
        this.drugName = drugName;
    }
}